/**
 * 项目名称：MSH
 * 包名称：com.mt.common.sys.dao
 * 文件名称：PermissionDao.java
 */
package com.mt.system.dao;

import java.util.List;

import com.mt.system.domain.Permission;
import com.mt.system.domain.Role;
import com.mt.system.domain.User;



/**
 * 类名称：PermissionDao <br>
 * 类描述： <br>
 * 创建人： 马腾 <br>
 * 创建时间：2012-10-18 下午10:36:00 <br>
 */
public interface PermissionDao {
	
	/**
	 * 增加权限
	 * @param permission
	 * @return
	 */
	public Permission addPermission(Permission permission);
	
	/**
	 * 得到所有的权限
	 * @return
	 */
	public List<Permission> getPermissions();
	
	/**
	 * 根据用户查询权限
	 * @param user
	 * @return
	 */
	public List<Permission> getPermissionsByUser(User user);

	/**
	 * 根据权限标记得到权限
	 * @param mark
	 * @return
	 */
	public Permission getPermissionByMark(String mark);
	
	/**
	 * 根据角色查询权限
	 * @param role
	 * @return
	 */
	public List<Permission> getPermissionsByRole(Role role);

}
